<!--
 * @description 指示器组件
 * @author: 陈陈
 * @date: 2025/05/09
 * @phone: 18560000860
 * @email: 18560000860@qq.com
 * @company: 济南晨霜信息技术有限公司 /
 * @business: 承接前后端项目的开发
-->
<template>
	<!-- 圆点模式 -->
	<pure-indicator-dot
		v-if="mode === 'dot'"
		v-bind="$attrs"
		@change="$emit('change', $event)"
	></pure-indicator-dot>

	<!-- 条状模式 -->
	<pure-indicator-bar
		v-else-if="mode === 'bar'"
		v-bind="$attrs"
		@change="$emit('change', $event)"
	></pure-indicator-bar>

	<!-- 线模式 -->
	<pure-indicator-line
		v-else-if="mode === 'line'"
		v-bind="$attrs"
	></pure-indicator-line>

	<!-- 数字模式 -->
	<pure-indicator-number
		v-else-if="mode === 'number'"
		v-bind="$attrs"
		@change="$emit('change', $event)"
	></pure-indicator-number>

	<!-- 下标模式 -->
	<pure-indicator-index
		v-else-if="mode === 'index'"
		v-bind="$attrs"
		@change="$emit('change', $event)"
	></pure-indicator-index>

	<!-- 标题模式 -->
	<pure-indicator-title
		v-else-if="mode === 'title'"
		v-bind="$attrs"
		@titleTap="$emit('titleTap', $event)"
	></pure-indicator-title>

	<!-- 进度模式 -->
	<pure-indicator-progress
		v-else-if="mode === 'progress'"
		v-bind="$attrs"
	></pure-indicator-progress>
</template>

<script>
import commonComponentOptions from "../../config/common-component-options";
export default {
	options: commonComponentOptions,
};
</script>

<script setup>
import { ref, computed } from "vue";
import props from "./props";

// **************************************************************************************************************
// * Refs
// **************************************************************************************************************

// **************************************************************************************************************
// * Options
// **************************************************************************************************************
defineOptions(commonComponentOptions);

// **************************************************************************************************************
// * Props
// **************************************************************************************************************
const _props = defineProps(props);

// **************************************************************************************************************
// * Emits
// **************************************************************************************************************
const _emits = defineEmits(["change", "titleTap"]);

// **************************************************************************************************************
// * Classes
// **************************************************************************************************************
const _classes = computed(() => {
	const array = [];
	return array;
});

// **************************************************************************************************************
// * Styles
// **************************************************************************************************************
const _styles = computed(() => {
	const array = [];

	return array;
});

// **************************************************************************************************************
// * Computed
// **************************************************************************************************************

// **************************************************************************************************************
// * Functions
// **************************************************************************************************************
</script>
